home *** CD-ROM | disk | FTP | other *** search
/ Chip: Special XP & Vista / Chip Spesial XP & Vista.iso / 3_Gadgets / Daily_Numerological_Forecast / Numerology.B4U.1.1.gadget / js / main.js next >
Text File  |  2007-02-05  |  4KB  |  146 lines

  1. var gadgetVer = 1.0;
  2. var monthStr = new Array(12)
  3.     monthStr[0]="January";
  4.     monthStr[1]="February";
  5.     monthStr[2]="March";
  6.     monthStr[3]="April";
  7.     monthStr[4]="May";
  8.     monthStr[5]="June";
  9.     monthStr[6]="July";
  10.     monthStr[7]="August"
  11.     monthStr[8]="September";
  12.     monthStr[9]="October";
  13.     monthStr[10]="November";
  14.     monthStr[11]="December";
  15.  
  16. var firstN, lastN;
  17.  
  18. function onLoad() {
  19.         System.Gadget.settingsUI = "settings.html";
  20.         System.Gadget.onSettingsClosed = updateSettings;
  21.         System.Gadget.onUndock = undocked;
  22.         System.Gadget.onDock = docked;
  23.         
  24.         docked();
  25.     
  26.         if (loadSettings()) updateScreen();    
  27.         window.setInterval(checkTime, (50*60000)); // Check Time every 50 minutes.
  28. }
  29.  
  30.  
  31. function updateScreen() {
  32.         var str = firstN+" "+lastN;
  33.         nameLabel.innerHTML= "<b>"+str+"</b>";
  34.         var todayDate = new Date();
  35.         today.innerHTML="("+ monthStr[todayDate.getMonth()].substr(0,3) +" "+todayDate.getDate() + ", " + todayDate.getFullYear()+")"
  36.         getRSS();
  37. }
  38.  
  39. function updateSettings() {
  40.     firstN=System.Gadget.Settings.read("FIRSTNAME");
  41.     lastN=System.Gadget.Settings.read("LASTNAME");
  42.  
  43.     saveSettingsToFile();
  44.     updateScreen();
  45. }
  46.  
  47. function loadSettings() {
  48.         var fso, s, file;
  49.         
  50.         fso = new ActiveXObject("Scripting.FileSystemObject");
  51.         file = System.Gadget.path+"\\settings.ini";
  52.         try {
  53.             s = fso.OpenTextFile(file, 1);
  54.             firstN= s.ReadLine();
  55.             lastN= s.ReadLine();
  56.             s.Close();
  57.             if (firstN=="" || lastN == "" || firstN == null || lastN == null) {
  58.                 text.innerHTML= "Error reading configuration file.<br> Please enter your name in the gadget settings.";
  59.                 dockedMsg.innerHTML = text.innerHTML;
  60.                 return 0; 
  61.             }
  62.           } catch (error) {
  63.                 text.innerHTML= "Error reading configuration file.<br> Please enter your name in the gadget settings.";
  64.                 dockedMsg.innerHTML = text.innerHTML;
  65.                 return 0;
  66.             }
  67.         System.Gadget.Settings.write("FIRSTNAME", firstN);
  68.         System.Gadget.Settings.write("LASTNAME", lastN);
  69.         return 1;
  70. }
  71.  
  72. function saveSettingsToFile() { // Writes the settings (DOB) to a file : %GADGET_DIR%\settings.ini
  73.     var date;
  74.     var fso, s, file;
  75.     
  76.     fso = new ActiveXObject("Scripting.FileSystemObject");
  77.     file = System.Gadget.path+"\\settings.ini";
  78.     try { // If file exists....
  79.         s = fso.GetFile(file);
  80.         s.Delete(); // Delete Current Settings;
  81.     } catch(error) {
  82.       }
  83.     s = fso.OpenTextFile(file , 8, true, -2);
  84.     s.WriteLine (firstN);
  85.     s.WriteLine (lastN);
  86.     s.Close();
  87. }
  88.  
  89. function checkTime() { // check for updates, update @ 0100 Israel Time
  90.     var now = new Date();
  91.  
  92.     now.setHours(now.getHours()+2); // Israel Time
  93.     if (now.getUTCHours()==1) updateScreen();
  94. }
  95.  
  96.  
  97. function docked() {
  98.     styleUndocked.disabled = true;
  99.     styleDocked.disabled = false;
  100.     with (document.body.style) {
  101.         width = 127;
  102.         height = 193;
  103.     }
  104.     dockedMsg.style.visibility = "visible";
  105.     nameLabel.style.visibility = "hidden";
  106.     label.style.visibility = "hidden";
  107.     text.style.visibility = "hidden";
  108.     link1.style.visibility = "hidden";
  109.     link2.style.visibility = "hidden";
  110.     today.style.visibility = "hidden";
  111.     System.Gadget.background = "url(images/docked.png)";
  112. }
  113.  
  114. function undocked() {
  115.         styleUndocked.disabled = false;
  116.         styleDocked.disabled = true;
  117.         with (document.body.style) {
  118.             width = 321;
  119.             height = 197;
  120.         }
  121.         nameLabel.style.visibility = "visible";
  122.         text.style.visibility = "visible";
  123.         link1.style.visibility = "visible";
  124.         link2.style.visibility = "visible";
  125.         today.style.visibility = "visible";
  126.         label.style.visibility = "visible";
  127.         dockedMsg.style.visibility = "hidden";
  128.         System.Gadget.background = "url(images/undocked.png)";
  129. }
  130.  
  131. function getRSS() {
  132.         var feed;
  133.         
  134.         text.innerHTML = "Loading Your Daily Forecast...";    
  135.         webAddress="http://www.b4u.com/rss/en_numero.php?f="+firstN+"&l="+lastN;
  136.         try {
  137.             var doc=new ActiveXObject("Microsoft.XMLDOM");
  138.             doc.async=false;
  139.             doc.load(webAddress);
  140.             feed = doc.getElementsByTagName("description").item(2).firstChild.data;
  141.         } catch(error) {
  142.                 feed = "Failed Loading Daily Forecast... Please Check Settings & Reload Gadget.";
  143.         }
  144.         text.innerHTML = feed;
  145.         dockedMsg.innerHTML = feed;
  146. }